I'm new to CSS. Any advice is appreciated. I want to turn the code below, which creates a horizontal menu, into a vertical menu. Even just a suggestion of where to start would be nice. Thanks.

/* $Id: admin_menu.css,v 1.25.2.4 2008/11/02 21:36:22 sun Exp $ */
/**
 * Administration Menu.  See http://drupalmodules.com/module/administration-menu
 *
 * Implementation of Sons of Suckerfish Dropdowns.
 * @see www.htmldog.com/articles/suckerfish
 **/
.block-user ul.menu {position: absolute; top: 0px;  left: 0px; font-size: 9px; font-family: "lucida grande", tahoma, verdana, arial, sans-serif; background: url(images/bkg.png) bottom left repeat-x #101010;$
.block-user ul.menu li.admin-menu-icon a { padding: 1px 8px 4px; }
.block-user ul.menu li.admin-menu-icon ul a { padding: 4px 8px; }
.block-user ul.menu li.admin-menu-icon img { vertical-align: bottom; }
.block-user ul.menu li.admin-menu-users img { margin-top: 1px; }
.block-user ul.menu li.admin-menu-action { float: right; }
.block-user ul.menu li.admin-menu-action a { border-left: 1px solid #323232; border-right: none; }
body.admin-menu { margin-top: 20px !important; }

/* all lists */
.block-user ul.menu, .block-user ul.menu ul { padding: 0; margin: 0; list-style: none; line-height: 1.4em; z-index: 999; }
.block-user ul.menu ul { position: static; }
.block-user ul.menu ul a { display: block; border-right: 1px solid #323232; border-bottom: none; padding: 4px 8px; font-weight: normal; color: #eee; text-decoration: none; text-align: left; }
.block-user ul.menu ul li.admin-menu-tab a { border-right: 1px solid #52565e; }
.block-user ul.menu li li a { border-right: none; border-top: 1px solid #323232; }

/* all list items */
/* width needed or else Opera goes nuts */
.block-user ul.menu li { float: left; height: 100%; margin: 0 !important; padding: 0; list-style-image: none; list-style-type: none; background-image: none; }
.block-user ul.menu li.admin-menu-tab { padding-bottom: 1px; background: url(images/bkg_tab.png) repeat-x left bottom; }
.block-user ul.menu li li { width: 160px; background: #202020; filter:Alpha(opacity=88); opacity: 0.88; }

/* second-level lists */
/* Note: Use left instead of display to hide publicly visible menus because display: none isn't read by screen readers */
.block-user ul.menu li ul { position: absolute; background: none; margin: 0; width: 160px; left: -999em; display: none; line-height: 1.2em; }

/* third-and-above-level lists */
.block-user ul.menu li li.expandable ul { margin: -20px 0 0 160px; }

.block-user ul.menu li:hover ul ul,
.block-user ul.menu li:hover ul ul ul,
.block-user ul.menu li:hover ul ul ul ul,
.block-user ul.menu li:hover ul ul ul ul ul,
.block-user ul.menu li.iehover ul ul,
.block-user ul.menu li.iehover ul ul ul,
.block-user ul.menu li.iehover ul ul ul ul,
.block-user ul.menu li.iehover ul ul ul ul ul {
  left: -999em;
  display: none;
}

/* lists nested under hovered list items */
.block-user ul.menu li:hover ul,
.block-user ul.menu li li:hover ul,
.block-user ul.menu li li li:hover ul,
.block-user ul.menu li li li li:hover ul,
.block-user ul.menu li li li li li:hover ul,
.block-user ul.menu li.iehover ul,
.block-user ul.menu li li.iehover ul,
.block-user ul.menu li li li.iehover ul,
.block-user ul.menu li li li li.iehover ul,
.block-user ul.menu li li li li li.iehover ul {
  left: auto;
  display: block;
}
.block-user ul.menu li.admin-menu-action:hover ul {
  right: 0;
}

/* second-and-more-level hovering */
.block-user ul.menu li li.expandable { background: #45454a url(images/arrow.png) no-repeat 145px 7px; }
.block-user ul.menu li li:hover,
.block-user ul.menu li li.iehover {
  background-color: #111;
}
.block-user ul.menu li li:hover a,
.block-user ul.menu li li:hover li:hover a,
.block-user ul.menu li li:hover li:hover li:hover a {
  color: #fff;
}

.block-user ul.menu li.admin-menu-action:hover ul {
  right: 0;
}

/* second-and-more-level hovering */
.block-user ul.menu li li.expandable { background: #45454a url(images/arrow.png) no-repeat 145px 7px; }
.block-user ul.menu li li:hover,
.block-user ul.menu li li.iehover {
  background-color: #111;
}
.block-user ul.menu li li:hover a,
.block-user ul.menu li li:hover li:hover a,
.block-user ul.menu li li:hover li:hover li:hover a {
  color: #fff;
}
.block-user ul.menu li li.expandable:hover a,
.block-user ul.menu li li.expandable:hover li.expandable:hover a {
  border-color: #666666; color: #eee;
}
.block-user ul.menu li li.expandable:hover li a,
.block-user ul.menu li li.expandable:hover li.expandable:hover li a {
  border-color: #323232;
}
.block-user ul.menu li li:hover li a,
.block-user ul.menu li li.iehover li a,
.block-user ul.menu li li.iehover li.iehover li a {
  color: #eee;
}
.block-user ul.menu li li.iehover a,
.block-user ul.menu li li.iehover li.iehover a,
.block-user ul.menu li li.iehover li.iehover li.iehover a {
  color: #fff; width: 90%; /* IE */
}

/* #210615: Mozilla on Mac fix */
html.js fieldset.collapsible div.fieldset-wrapper { overflow: visible; }

@media print {
  .block-user ul.menu { display: none; }
  body.admin-menu { margin-top: 0 !important; }
}

Comments

Ariesto’s picture

I have an example of a vertical suckerfish menu, but I am having a tough time comparing the two:

http://www.htmldog.com/articles/suckerfish/dropdowns/example/vertical.html



	body {
		font-family: arial, helvetica, serif;
	}
	
	#nav, #nav ul { /* all lists */
		padding: 0;
		margin: 0;
		list-style: none;
		float : left;
		width : 11em;
	}
	
	#nav li { /* all list items */
		position : relative;
		float : left;
		line-height : 1.25em;
		margin-bottom : -1px;
		width: 11em;
	}
	
	#nav li ul { /* second-level lists */
		position : absolute;
		left: -999em;
		margin-left : 11.05em;
		margin-top : -1.35em;
	}
	
	#nav li ul ul { /* third-and-above-level lists */
		left: -999em;
	}
	
	#nav li a {
		width: 11em;
		w\idth : 10em;
		display : block;
		color : black;
		font-weight : bold;
		text-decoration : none;
		background-color : white;
		border : 1px solid black;
		padding : 0 0.5em;
	}
	
	#nav li a:hover {
		color : white;
		background-color : black;
	}
	
	#nav li:hover ul ul, #nav li:hover ul ul ul, #nav li.sfhover ul ul, #nav li.sfhover ul ul ul {
		left: -999em;
	}
	
	#nav li:hover ul, #nav li li:hover ul, #nav li li li:hover ul, #nav li.sfhover ul, #nav li li.sfhover ul, #nav li li li.sfhover ul { /* lists nested under hovered list items */
		left: auto;
	}
	
	#content {
		margin-left : 12em;
	}
Ariesto’s picture

Its way to difficult for a beginner to modify someone else's code. I recommend you build from scratch. In the end, that's how I solved my question above.